Method and system for channel equalization

ABSTRACT

One embodiment includes a method of receiving a transmitted signal. The method comprises receiving a signal transmitted over a channel. The signal comprises a known signal and an information signal. The method further includes determining at least one indicator of channel characteristics based at least in part on the portion of the known signal. The method further includes generating a first value indicative of the information signal based at least in part on the at least one indicator of the channel characteristics. The first value comprises an error signal. The method further comprises removing the error signal from the first estimate of the signal based at least in part on the portion of the known signal. Other embodiments include systems for performing the method and methods of making such systems.

CLAIM OF PRIORITY UNDER 35 U.S.C. §119

The present application for patent claims is a continuation to pendingU.S. patent application Ser. No. 11/293,527 filed Dec. 2, 2005 andclaiming priority to Provisional Application No. 60/650,042 entitled“FREQUENCY DOMAIN EQUALIZATION IN THE PRESENCE OF HIGH DOPPLER” filedFeb. 4, 2005 and assigned to the assignee hereof and hereby expresslyincorporated by reference herein.

BACKGROUND

1. Field

The present invention relates to methods and systems for wirelesscommunications, and more specifically, to methods and systems offrequency domain equalization.

2. Background

In communications systems with higher data rates, e.g., data rates inthe range of 50-200 Mbps, errors in received data may result inretransmission delays that prevent full utilization of the availablebandwidth. One way of reducing retransmission delays is to reduce biterror rates (BER) in the received signal.

More particularly, during communication over a wireless channel, thechannel behavior changes over time, thereby affecting (e.g., increasingerrors in) the signals transmitted over the channel. It is desirable topredict or characterize the channel behavior over time in order tocompensate for such variations in channel characteristics upon receivingthe transmitted signals. In certain systems, channel equalization isimplemented in the time domain to estimate the transmitted signal moreaccurately. However, equalization in the time domain demands intensecomputational power in the receiver and complicates circuitry. Moreover,corrections in the time domain are further complicated by the presenceof noise, such as white noise over the channel. Hence, there is a needto simplify the computational complexity in estimating channel behaviorand correcting signals transmitted over the channel.

SUMMARY

One aspect of the invention comprises a method of processing a signal.The method comprises receiving a signal transmitted over a channel. Thesignal comprises an information signal and at least a portion of knownsignal. The method further comprises determining at least one indicatorof channel characteristics based at least in part on the portion of theknown signal. The method further comprises generating a first valueindicative of the information signal based at least in part on the atleast one indicator of the channel characteristics. The first valuecomprises an error signal. The method further comprises removing theerror signal from the first estimate of the signal based at least inpart on the portion of the known signal.

Another aspect of the invention comprises a device configured to receivea signal transmitted over a channel. The signal comprises an informationsignal and at least a portion of known signal. The device comprises afirst circuit configured to determine at least one indicator of channelcharacteristics based at least in part on the portion of the knownsignal. The device further comprises a second circuit configured togenerate a first value indicative of the information signal based atleast in part on the at least one indicator of the channelcharacteristics. The first value comprises an error signal. The devicefurther comprises a third circuit configured to remove the error signalfrom the first estimate of the signal based at least in part on theportion of the known signal.

Another aspect of the invention comprises a device configured to receivea signal transmitted over a channel. The signal comprises an informationsignal and at least a portion of known signal. The device comprisesmeans for determining at least one indicator of channel characteristicsbased at least in part on the portion of the known signal. The devicefurther comprises means for generating a first value indicative of theinformation signal based at least in part on the at least one indicatorof the channel characteristics. The first value comprises an errorsignal. The device further comprises means for removing the error signalfrom the first estimate of the signal based at least in part on theportion of the known signal.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an overview of an exemplary wireless communicationssystem.

FIG. 2 is a block diagram illustrating an exemplary data frame structurefor transmission in one embodiment of the system of FIG. 1.

FIG. 3 is a block diagram illustrating in further detail the exemplarywireless communications system of FIG. 1.

FIG. 4 is a flowchart illustrating one embodiment of a method ofcommunicating data in the exemplary system illustrated by FIG. 3.

FIG. 5 is a flowchart illustrating an exemplary method of estimating thecharacteristics of a channel, such as in a portion of the methodillustrated by FIG. 4.

FIG. 6 is a flowchart illustrating an exemplary method of performingfrequency domain equalization, such as in a portion of the methodillustrated in FIG. 4.

FIG. 7 is a flowchart illustrating an exemplary method of removingresidual intersymbol interference (ISI), such as in a portion of themethod illustrated in FIG. 4.

DETAILED DESCRIPTION

The following detailed description is directed to certain specificembodiments of the invention. However, the invention can be embodied ina multitude of different ways as defined and covered by the claims. Inthis description, reference is made to the drawings wherein like partsare designated with like numerals throughout.

In one embodiment, a receiver receives signals transmitted over a radiofrequency (RF) channel. The signals comprise a known signal, e.g., apilot signal, and an unknown signal, e.g., a data signal. The receivermakes an estimate of characteristics of the communications channel basedat least in part on at least a received portion of the known signal. Thereceiver generates a first estimate of the unknown signal based at leastin part on the estimated channel characteristics. The first estimate ofthe unknown signal comprises an error signal, e.g., residual intersymbolinterference (IR). The receiver determines an estimate of the errorsignal based at least in part on the known signal. The receiver removesthe error signal from the first estimate of the signal based at least inpart on the error signal estimate.

FIG. 1 illustrates an overview of an exemplary wireless communicationssystem 100. In the exemplary embodiment, the communications system 100includes one or more base stations 102 and one or more user terminals104. In the exemplary embodiment, the communications system isconfigured to operate as a cellular radio network. A cellular radionetwork includes one or more base stations 102. Each base station 102provides communications to different areas (“cells”) (which may overlap)in order to provide radio coverage over a wider area than the area ofone cell. The user terminals 104 may be fixed in location or mobile.Various handoff techniques may be used to allow moving user terminals104 to communicate with different base stations 102 as such moving userterminals 104 pass into or through cells. In other embodiments, thecommunications system 100 may include point-to-point communicationsbetween user terminals 102 or one way communications links. Moreover,certain embodiments are discussed herein with reference to wirelesscommunications using a radio frequency (RF) carrier. However, in otherembodiments, the communications network may include other communicationmedia such as optical signals or communications over wired connections.

Various embodiments of the system 100 may communicate over one or morechannels in one or more RF frequency bands, e.g., frequency bandscommonly referred to as 800 MHz, 850 MHz, 900 MHz, 1800 MHz, 1900 MHz,or 2000 MHz. Embodiments of the communications system 100 include an airinterface that determines how the communication system operates theradio link between the base station 102 and the user terminals 104. Forexample, the communications system 100 may use a code division multipleaccess (CDMA) based air interface or a time division multiple access(TDMA) air interface. In one exemplary embodiment, the communicationssystem 100 includes a wideband CDMA (W-CDMA) air interface utilizing a 5MHz channel in the 1900 MHz band. Typically, only 3.84 MHz of this 5 MHzband is available for use.

Certain types of data transmission can be sensitive to retransmissiondelays, e.g. voice and common internet protocols such as TCP (TransportControl Protocol). For example, TCP connections generally do not fullyutilize available channel bandwidth if transmission times (includingtimes to retransmit lost data in lower level communication layers) aretoo large. For example, in one embodiment, data rates in the range of 50Mbps can be achieved with a TCP SER (segment error rate) is in the rangeof 2×10−5 to 5×10−6. In one embodiment, the bit error rate (BER) of thecommunications system 100, and thus ultimately the segment error ratesof higher level protocols such as TCP, are reduced by performing achannel equalization of the received signal.

A channel refers to a communications medium over which a signal istransmitted. Generally, channels are not perfect, e.g., a channelgenerally has time and/or frequency dependent characteristics thataffect a signal transmitted over the channel. Mathematically, a channelmay be represented or characterized by a channel impulse response, h(t),that relates a signal input, e.g., transmitted, to the channel to asignal output, e.g., received, from the channel. Channel equalizationgenerally refers to a process by which a received signal is adjusted inresponse to dynamic characteristics of the channel over which the signalis sent.

Equalization may be performed in the time domain or frequency domain.However, time domain equalizers may be computationally complex.Moreover, finite length time domain equalizers tend to have aperformance loss as in certain channel conditions. In one embodiment,the invention provides a device comprising a frequency domain equalizerthat is computationally efficient and that compensates for Dopplereffects.

In one embodiment, as is set forth in further detail below, the system100 performs channel equalization by communicating a known signal to thereceiver along with a data signal. The data signal may contain one ormore forms of data such as voice or other data. For example, the datasignal may include TCP data communicated over at least in part an IP(Internet Protocol) network. The receiver identifies the known signaland uses it to estimate the characteristics of the channel. This channelestimate is used to perform channel equalization in the frequencydomain.

Intersymbol interference (ISI) generally refers to interference betweenpulses (corresponding to different symbols in the data) in a signal thatmay occur when adjacent pulses become dispersed in time so as to overlapwith each other. When this overlap becomes too great, a receiver may nolonger be able to correctly discriminate or identify each pulse. In oneembodiment, the equalized signal may include intersymbol interference(ISI) that has not been removed by the equalization. In one suchembodiment, this residual ISI is removed by using the difference betweenthe known signal and a received version of the known signal to estimatethe residual ISI.

FIG. 2 is a block diagram illustrating an exemplary data frame structurefor transmission in one embodiment of the communications system 100,e.g., High Speed Downlink Packet Access (HSDPA) system. HSDPA is apacket-based data service in wideband code division multiple access(W-CDMA) systems in which data is transmitted to a receiver during timeslots 110. In one embodiment, the data comprises “chips” that representone or more bits of user data, such as voice, image, video, or otherdata. For example, bits of user data may be coded, for example, using aforward error correction code, into symbols. Each of the symbols may befurther encoded into a larger number of chips by applying “spreading”code. A spreading code is used in air interfaces such as CDMA to createa spread spectrum signal, e.g., a signal which is transmitted in afrequency band that is considerably wider than the frequency content ofthe user data.

In the exemplary structure of FIG. 2, the time slot 110 includes twosub-slots of 1280 chips each. Each sub-slot includes three data blocks112, two of 448 chips and one of 128 chips. The exemplary time slot 110also includes 64 bit prefixes 114 and 64 bit suffixes 116 separating thedata blocks 112. A known, or pilot, signal xp(t) is communicated in theprefixes 114 and suffixes 116 so that the transmitter 302 communicates aknown signal xp(t) and a data signal xd(t) within each slot. In oneembodiment, the known signal is the same in each time slot. For example,the known data may be selected to have a frequency response that isconstant across the entire bandwidth. Such a sequences may includepolyphase sequences, x_(p)[n]=e^(−jπn) ² ^(/P)∀0≦n≦P−1, with P being afinite integer representing the length of the known or pilot sequence,e.g., 64 in the embodiment illustrated in FIG. 2. In one embodiment, thepilot sequence comprises a signal that is free of spectral nulls, e.g.,Xp(f) (xp(t) in frequency space) is selected to be different from zero.

In another embodiment, the known signal, xp(t), is a signal communicatedon a different code channel, e.g., a pilot channel signal of a CDMAsystem. A portion of the pilot signal received just before, just after,or concurrently with the data signal may be used as the known signal. Inone embodiment, the pilot channel of a CDMA system is encoded with apseudorandom number (PN) sequence. Thus, the known signal xp(t) in suchan embodiment of the system 100 is time varying and depends on theposition within the PN sequence. In other embodiments, the pilot signalmay include any signal that is known.

FIG. 3 is a block diagram illustrating in further detail the exemplarywireless communications system 100. In various embodiments, thefunctional blocks illustrated in FIG. 3 may be implemented by aprocessor executing software instructions, as a digital circuit, as ananalog circuit, or by a combination thereof. The block diagramillustrates portions of both a transmitter 302 and a receiver 304 in thesystem 100. In particular, in one embodiment, the transmitter 302 maycomprise blocks 122-124 and the receiver 304 may comprise the blocks130-146. In one embodiment, the receiver 304 comprises one or moreintegrated circuits that are formed using semiconductor manufacturingtechniques. The integrated circuits may include at least one of ageneral purpose processor, an application specific integrated circuit(ASIC), a digital signal processor (DSP), other suitable hardware, or acombination thereof. In one embodiment, two or more of the blocks130-146 are formed on a single integrated circuit. In one embodiment,the transmitter 302 comprises a base station 102 and the receiver 304comprises a user terminal 104. In one embodiment, communication in thesystem 100 is asymmetric, e.g., only the base station 102 includes thetransmitter 302 portion of FIG. 3 and only the user terminal 104includes the receiver 304 portion. In other embodiments, communicationin the system 100 is symmetric, both the base station 102 and the userterminal 104 include both the transmitting and receiver functionalblocks of FIG. 3.

In one embodiment, the transmitter 302 includes a combiner 122 thatcombines a known signal xp(t) with the data signal xd(t) to form asignal x(t). In one embodiment, the combiner 122 combines the knownsignal xp(t) with the data signal xd(t) to form the data stream as shownin the slot 110 of FIG. 2. In another embodiment of a CDMA system, thecombiner 122 combines the known signal xp(t) with the data signal xd(t)by placing the known signal xp(t) in a one code channel, e.g., a pilotchannel, and the data signal xd(t) in a another code channel, e.g., adata channel, in compliance with CDMA systems.

The transmitter 302 further includes a pulse shaper 124 that generates abandwidth limited signal by effectively convolving a pulse shapingsignal, p(t) with the signal x(t). This bandwidth limited signal istransmitted over the channel, represented as the channel impulseresponse h(t), and illustrated as a block 126 in FIG. 3. The operationof the channel may be represented as a convolution of the channelimpulse response, h(t), with the shaped signal x(t)*p(t), e.g.,x(t)*p(t)*h(t).

On a receiver, in one embodiment, a matched filter 130 (matched with thepulse shaping block 124) is applied to the signal to receive thetransmitted signal. The matched filter 130 applies the complexconjugate, p*(−t), of the pulse shaping signal to the signal receivedfrom the channel, x(t)*p(t)*h(t) to produce a received signal, y(t).Mathematically, the received signal, y(t), that is output from thematched filter 130 may be represented as:y(t)=x(t)*p(t)*h(t)*p*(−t).  (Eqn. 1)

The received signal y(t) comprises a received data signal yd(t) and areceived known signal yp(t) that correspond to the transmitted datasignal xd(t) and the transmitted known signal xp(t).

The receiver 304 further includes a fast Fourier Transform (FFT) module132 that transforms the received signal y(t) from the time domain to afrequency domain signal Y(f). By treating the pulse shaping and matchfiltering as comprising an effective transmission channel, the receivedsignal in the frequency domain may be represented as the product of thetransmitted signal, X(f), and the transfer function of the channel,H(f):Y(f)=X(f)·H(f), where “·” represents multiplication.  (Eqn. 2)

In one embodiment, an estimate of the transmitted signal, {circumflexover (X)}(f), is obtained based an estimate of the channelcharacteristics, Ĥ(f). In particular, the receiver 304 includes achannel estimator 134 that determines the estimate, Ĥ(f), of the channelcharacteristics based on the portion of the received known signal, yP(t)and YP(f) that corresponds to the transmitted known signal xP(t) andXP(f), respectively. For example, in one such embodiment, the knownsignal, xP(t), and the received version of the known signal, yP(t), maybe represented in discrete frequency space as XP[k] and YP[k],respectively. Similarly, the transfer function of the channel, H(f), indiscrete frequency space may be represented as H[k]. Assuming thepresence of additive white noise in the system, represented as W[k], andassuming that the known signal XP[k] comprises a signal having aninteger length of P chips, or pulses, the received known signal YP[k]may be expressed in discrete form as:Y _(p) [k]=√{square root over (P)}·H[k]·X _(P) [k]+W[k].  (Eqn. 3)

This equation may be solved using the relationship between the knowntransmitted signal (in discrete frequency space) XP[k] and knownreceived signal (in discrete frequency space) YP[k] in order todetermine an estimate of the channel characteristics Ĥ(k). One method ofsolving such an equation includes application of a statistical solutionknown as a minimum mean squared estimate (MMSE) technique. In oneembodiment, an MMSE solution for the channel estimate Ĥ[k], may beobtained in discrete frequency space, as follows:

${{\hat{H}\lbrack k\rbrack} = {\frac{{R_{cc}\lbrack k\rbrack} \cdot \sqrt{P} \cdot {X_{P}^{*}\lbrack k\rbrack}}{{P \cdot {R_{cc}\lbrack k\rbrack} \cdot {{X_{P}\lbrack k\rbrack}}^{2}} + {R_{ww}\lbrack k\rbrack}} \cdot {Y\lbrack k\rbrack}}},$

where average channel statistics are represented as R_(cc)=E{|H[k]|²}

and an average noise variance as R_(ww)[k]=E{|W[k]|²}.

In one embodiment, the channel and noise variance statistics, Rcc andRww, may be derived from previously received data. For example, Rcc maybe computed from a long term average of Ĥ[k], such as over a number offrames. Rww may be estimated based on errors in the pilot samples. Inanother embodiment, a zero forcing (ZF) (in which the noise variance istaken to its zero limit) MMSE discrete solution for Ĥ[k], may beobtained as follows:

$\begin{matrix}{{\hat{H}\lbrack k\rbrack} = {\frac{1}{\sqrt{P}}\frac{1}{X_{P}\lbrack k\rbrack}{Y_{P}\lbrack k\rbrack}}} & \left( {{Eqn}.\mspace{14mu} 5} \right)\end{matrix}$

Using the output of the channel estimator 134, the receiver 304 furthercomprises an equalizer 136 that uses the channel estimate, Ĥ[k] tofilter the received signal Y(f) in order to obtain an estimate{circumflex over (X)}(f) of the transmitted data signal. As noted above,the received signal, Y(f), equals the product of the transmitted signal,X(f) and the channel transfer function H(F). A frequency domain estimate{circumflex over (X)}(f) of the transmitted signal x(t) can thus beobtained by taking the product of the received signal, Y(f) with thecomplex conjugate of the channel transfer function, H*(f). Taking intoaccount the presence of additive white noise, W(f), the estimatedtransmitted signal can be represented as:{circumflex over (X)}(f)=X(f)·H(f)·H*(f)+W(f)=Y(f)·H*(f)+W(f).  (Eqn. 6)

A minimum mean square estimate (MMSE) equalizer solution to thisestimate of the received signal, {circumflex over (X)}(f) may berepresented as:

$\begin{matrix}{{{\hat{X}(f)} = \frac{{Y(f)} \cdot {{\hat{H}}^{*}(f)}}{{{\hat{H}(f)}}^{2} + \sigma^{2}}},} & \left( {{Eqn}.\mspace{14mu} 7} \right)\end{matrix}$where σ² represents a noise variance term related to the noise termW(f).

The noise variance term in the MMSE solution, σ², operates as a biasterm to eliminate zeros that would introduce discontinuities into theequation. In one embodiment, a discrete frequency space MMSE solution tothe above representation of the received signal {circumflex over (X)}(f)may be expressed as follows:

${{\hat{X}(k)} = {\frac{{R_{bb}\lbrack k\rbrack} \cdot \sqrt{P} \cdot {{\hat{H}}^{*}\lbrack k\rbrack}}{{P \cdot {R_{bb}\lbrack k\rbrack} \cdot {{\hat{H}\lbrack k\rbrack}}^{2}} + {R_{ww}\lbrack k\rbrack}} \cdot {Y\lbrack k\rbrack}}},$where R_(bb)=E{|X[k]|²} and R_(ww)[k]=E{|W[k]|²} andwhere W represents the noise in the data signal.

In such an embodiment, the data statistics Rbb and noise statistics Rwwmay be derived from estimating the signal energy of the received data orfrom previously received data. Rbb may be derived from the received datasignal constellation energy or from the ratio of traffic or data energyto pilot energy. Rww may be estimated based on errors in the pilotsamples.

As noted above, the estimated signal {circumflex over (X)}(f) includesresidual ISI after performing an inverse FFT. In one embodiment, thisresidual ISI is corrected to obtain a estimate {circumflex over(x)}_(d)(t) of the transmitted data signal, x_(d)(t). In particular, thereceiver 304 further includes an inverse FFT (IFFT) module 140 thatconverts the equalized signal {circumflex over (X)}(f) to a time domainsignal {circumflex over (x)}(t). The receiver 304 further comprises anISI correction module 142 that corrects for the residual ISI to derivean estimate {circumflex over (x)}_(d)(t) of the data signal x_(d)(t). Inone embodiment, as discussed in further detail with reference to FIG. 7,the ISI correction module 142 corrects for the residual ISI based on thedifference between a known signal and received version of that knownsignal, e.g. x_(P)(t) and {circumflex over (x)}_(P)(t). The receiver 304further includes a demodulator 144 that further processes the estimateddata signal {circumflex over (x)}_(d)(t). This processing may include,for example, recovering the signal from the modulating signal using ademodulation scheme such as QPSK, 16-QAM, 64-QAM, or any other suitablescheme.

FIG. 4 is a flowchart illustrating one embodiment of a method 200 ofcommunicating data in the exemplary system 100 of FIG. 3. The method 200begins at a block 202 in which a transmitter, e.g., the base station102, identifies the data signal x_(D)(t) for transmission. In oneembodiment, the data signal is at least partially modulated, e.g., thedata signal x_(D)(t), includes data such as sound, video, voice, orother data that has been coded with one or more error correction codes.Moving to a block 204, the transmitter 302 generates a known, or pilot,signal x_(P)(t). In one embodiment, the pilot signal x_(P)(t) comprisesdata pulses, chips, that are inserted as a prefix (e.g., before) orsuffix to (e.g., after) a data block to be transmitted during a timeslot. In one embodiment, the pilot signal is 64 chips in length.

Proceeding to a block 206, the transmitter 302 communicates the datasignal x_(D)(t) and pilot signal x_(P)(t) over the channel to areceiver, e.g., the user terminal 104 as a received signaly(t)=yD(t)+yp(t). Next at a block 210, the receiver 304 performs aninverse FFT to convert the received signal y(t) from the time domaininto the frequency domain as Y(f).

Moving to a block 212, the receiver 304 derives an estimate Ĥ(f) of thechannel characteristics in the frequency domain based on at least aportion of the known signal XP(f) and corresponding Yp(f). Thisestimation process is described in more detail with reference to FIG. 5.Next at a block 214, the receiver 304, based on the channel estimateĤ(f), generates an estimate of the received data signal Ŷ(f) thatincludes residual ISI. This process is described in more detail withreference to FIG. 6.

Moving to a block 216, the receiver 304 performs an inverse FFT toconvert the frequency domain received signal Y(t) to a time domainsignal, y(t). Next at a block 220, the receiver 304 corrects theresidual ISI to produce an estimated signal, {circumflex over(x)}_(d)(t), of the data signal x_(d)(t) In one embodiment, the receiver304 corrects the residual ISI based on the difference between at least aportion of the known signal xP(t) and the received signal yP(t) thatcorresponds to the known signal. This process is described in moredetail with reference to FIG. 7. Proceeding to a block 222, the receiver304 demodulates the received data signal {circumflex over (x)}_(D)(t) bydecoding error correction or other encodings to provide the originalsound, video, voice, or other data.

FIG. 5 is a flowchart illustrating an exemplary method 212 of estimatingthe characteristics of a channel, ĥ(t), such as in a portion of themethod 200 illustrated by FIG. 4. At a block 250, the receiver 304identifies P samples of the pilot signal yp(t) and performs an FFT toconvert those samples to the frequency domain, e.g., Yp(f). Next atblock 252, the receiver 304 derives a channel estimate Ĥ(f) based on thepilot signal Yp(f) as described above with reference to the channelestimator 134 of FIG. 3. In one embodiment, Ĥ(f) may be derived indiscrete form, Ĥ[k] using equations 4 or 5.

Generally, data blocks are much longer than the number of pilot samples,P. For example, in the exemplary embodiment of FIG. 2, the data blocksinclude D=448 or 128 chips while the prefix and suffix blocks are onlyP=64 chips long. Thus, a mismatch exists between the number of discretedata points, or taps, of the channel estimate Ĥ(f) and the number ofdiscrete data points, or taps, of the received signal Y(f). Thus, in oneembodiment, as is further described with reference to blocks 254-258,the P-tap (e.g., having P number of discrete values) frequency domainchannel estimate Ĥ(f) is converted to a D-tap (e.g., having D number ofdiscrete values) frequency domain channel estimate for use in theequalization block 214 of FIG. 4. In particular, at a block 254 of FIG.5, the receiver 304 performs an IFFT to convert the channel estimateĤ(f) to the time domain as ĥ(t). Next at a block 256, the receiver 304performs noise suppression (zero forcing) using a suitable threshold. Inone embodiment, data points that are below a threshold, e.g., 10-30% ofthe maximum value in the data, are forced or set to zero, or removedfrom the channel estimate. Moving to block 258, the receiver 304performs an FFT to convert the channel estimate ĥ(t) to a D-tap (e.g.,having D=448 values in one embodiment) frequency domain channel estimateĤ(f). The channel estimate Ĥ(f) is thus available for further processingof the received signal.

FIG. 6 is a flowchart illustrating an exemplary method 214 of performingfrequency domain equalization, such as in a portion of the method 200illustrated in FIG. 4. At a block 270, the receiver 304 identifies aportion of the received signal, X(f). In one embodiment, the estimatedsignal X(f) includes a portion of the pilot signal XP(f). This includedportion of the pilot signal is thus equalized as discussed withreference to FIG. 6 for use in later processing steps. Next at a block272, the receiver 304 derives an estimate of the transmitted data signal{circumflex over (X)}(f) including residual ISI, e.g., {circumflex over(X)}(f)+σ², based on the channel estimate Ĥ(f). In on embodiment, theestimated signal {circumflex over (X)}(f) includes a data signal portion{circumflex over (X)}_(d)(f) and a pilot signal portion {circumflex over(X)}_(P)(f). In one embodiment, as discussed above with reference toestimator 136 of FIG. 3, the receiver 304 derives the estimated signalusing a MMSE or ZF-MMSE discrete solution to the equation:

$\begin{matrix}{{\hat{X}(f)} = {\frac{{Y(f)} \cdot {{\hat{H}}^{*}(f)}}{{{\hat{H}(f)}}^{2} + \sigma^{2}}.}} & \left( {{Eqn}.\mspace{14mu} 7} \right)\end{matrix}$The equalized signal {circumflex over (X)}(f) is thus provided forfurther processing.

FIG. 7 is a flowchart illustrating an exemplary method 220 of removingresidual intersymbol interference (ISI), such as in a portion of themethod 200 illustrated in FIG. 4. At a block 280, the receiver 304identifies an equalized portion of the pilot signal {circumflex over(x)}_(P)(t) and ŶP(f). In blocks 282-286, the receiver 304 uses theidentified pilot signal {circumflex over (x)}_(P)(t)/{circumflex over(X)}_(P)(f) to derive filter taps (data samples) and coefficients forperforming a time domain equalization that filters the residual ISI fromthe equalized signal {circumflex over (x)}_(d)(t). In particular, at ablock 282, the receiver 304 identifies filter tap locations (data pointsused in the filter) based at least in part on the channel estimate,ĥ(t), the known pilot signal, xP(t) (converted to the frequency domainas XP(f) and the estimated pilot signal, {circumflex over (X)}_(P)(f).In one embodiment, the filter taps for use in the time domain filter canbe represented in a discrete form as:

$\begin{matrix}{{{E\lbrack k\rbrack} = {\frac{1}{\sqrt{P}} \cdot \frac{1}{\hat{H}\lbrack k\rbrack} \cdot \frac{1}{X_{P}\lbrack k\rbrack} \cdot {Y_{P}\lbrack k\rbrack}}},} & {\left( {{Eqn}.\mspace{14mu} 9} \right),}\end{matrix}$in the frequency domain; and

$\begin{matrix}{{{e\lbrack n\rbrack} = {\frac{1}{\sqrt{P}} \cdot {\sum\limits_{k = {- {({P/2})}}}^{{({P/2})} - 1}{{E\lbrack k\rbrack} \cdot {\mathbb{e}}^{{- j} \cdot 2 \cdot \pi \cdot k \cdot {n/P}}}}}},} & {\left( {{Eqn}.\mspace{14mu} 10} \right),}\end{matrix}$in the time domain.

In one embodiment, a suitable threshold is applied to these data pointsso that only more significant data points are selected for use in thefilter. In one such embodiment, the threshold is a predeterminedthreshold that is selected so that only data points within about 6 db or10% of the dominant tap (strongest, e.g., greatest value) are used. Inanother embodiment, the threshold is selected so that only taps within athreshold of between 1/10 and ¼ of the dominant tap are used. In oneembodiment, only the dominant tap is used.

Next at a block 284, the receiver 304 determines filter coefficientsbased on difference between the known pilot signal, xp(t), and theestimated pilot signal, ŷp(t). Assuming that an integer k different taplocations or data points were selected in block 282, which arerepresented as τk, the filter coefficients, a[k], may be derived indiscrete form using a MMSE or ZF-MMSE solution of the followingoptimization problem to find optimized filter coefficient values a[k],e.g., aopt[k], that minimize a value indicative of the differencebetween the pilot signal xp(t) and the estimated pilot signal, ŷp(t) asrepresented below:

$\begin{matrix}{{a_{opt}\lbrack k\rbrack} = {\arg{\min\limits_{a}{\sum\limits_{n = 0}^{P - 1}{\begin{matrix}{{{\hat{y}}_{P}(n)} - {\sum\limits_{k}{{a\lbrack k\rbrack} \cdot}}} \\{{{\hat{y}}_{P}\left\lbrack {n - \tau_{k}} \right\rbrack} - {x_{P}\lbrack n\rbrack}}\end{matrix}}^{2}}}}} & \left( {{Eqn}.\mspace{14mu} 11} \right)\end{matrix}$

Moving to a block 286, these taps and coefficients are used to filterthe residual ISI from the received signal ŷ(t). Again in discrete form,the data signals with the residual ISI removed may be derived using thefollowing equation:

$\begin{matrix}{{{\hat{x}}_{D}\lbrack n\rbrack} = {{{\hat{y}}_{D}\lbrack n\rbrack} - {\sum\limits_{k}{{a_{opt}\lbrack k\rbrack}{{{\hat{y}}_{D}\left\lbrack {n - \tau_{k}} \right\rbrack}.}}}}} & \left( {{Eqn}.\mspace{14mu} 12} \right)\end{matrix}$The equalized and filtered signals are thus provided to the demodulatorfor further processing.

It is to be recognized that, depending on the embodiment, certain actsor events of the methods described herein can be performed in adifferent sequence, may be added, merged, or left out all together(e.g., not all described acts or events are necessary for the practiceof the various methods) without departing from the scope of theinvention. Moreover, in certain embodiments, acts or events may beperformed concurrently, e.g., through multi-threaded processing,interrupt processing, or multiple processors, rather than sequentially.

Those of skill in the art would understand that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Those of skill would further appreciate that the various illustrativelogical blocks, modules, circuits, and algorithm steps described inconnection with the embodiments disclosed herein may be implemented aselectronic hardware, computer software, or combinations of both. Toclearly illustrate this interchangeability of hardware and software,various illustrative components, blocks, modules, circuits, and stepshave been described above generally in terms of their functionality.Whether such functionality is implemented as hardware or softwaredepends upon the particular application and design constraints imposedon the overall system. Skilled artisans may implement the describedfunctionality in varying ways for each particular application, but suchimplementation decisions should not be interpreted as causing adeparture from the scope of the present invention.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein may be implementedor performed with a general purpose processor, a digital signalprocessor (DSP), an application specific integrated circuit (ASIC), afield programmable gate array (FPGA) or other programmable logic device,discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general purpose processor may be a microprocessor, but in thealternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a DSP and a microprocessor, a plurality of microprocessors, one ormore microprocessors in conjunction with a DSP core, or any other suchconfiguration.

The steps of a method or algorithm described in connection with theembodiments disclosed herein may be embodied directly in hardware, in asoftware module executed by a processor, or in a combination of the two.A software module may reside in RAM memory, flash memory, ROM memory,EPROM memory, EEPROM memory, registers, hard disk, a removable disk, aCD-ROM, or any other form of storage medium known in the art. Anexemplary storage medium is coupled to the processor such the processorcan read information from, and write information to, the storage medium.In the alternative, the storage medium may be integral to the processor.The processor and the storage medium may reside in an ASIC. The ASIC mayreside in a user terminal. In the alternative, the processor and thestorage medium may reside as discrete components in a user terminal.

The previous description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the principles and novelfeatures disclosed herein.

The invention claimed is:
 1. A method of processing a signal thatsimplifies computational complexity in estimating channel behavior andcorrecting signals transmitted over the channel the method comprising:a) receiving a signal transmitted over the channel, the signalcomprising an information signal and at least a portion of a knownsignal; b) determining at least one indicator of channel characteristicsbased at least in part on the portion of the known signal; c) generatinga first value indicative of the information signal based at least inpart on the at least one indicator of the channel characteristics,wherein the first value comprises an error signal; and d) removing theerror signal from the first value of the signal based at least in parton the portion of the known sign,; wherein determining at least oneindicator of the channel characteristics comprises determining anestimate of the channel characteristics in the frequency domain, andwherein removing the error signal comprises determining a valueindicative of the error signal by identifying filter tap locations of afilter based on the estimate of the channel characteristics, the knownsignal, the portion of the known signal as received and by determiningcoefficients of the filter for each of the filter tap locations based atleast in part on a difference between the portion of the known signal asreceived and the known signal.
 2. The method of claim 1, wherein theerror signal is due at least in part to intersymbol interference.
 3. Themethod of claim 1, wherein the known signal is characterized by anon-zero signal in the frequency domain.
 4. The method of claim 1,wherein the known signal comprises a pilot signal.
 5. The method ofclaim 1, wherein determining the at least one indicator of the channelcharacteristics further comprises transforming the estimate of thechannel characteristics from a signal comprising a first number ofdiscrete values to a signal comprising a second number of discretevalues, wherein the second number of discrete values corresponds to anumber of discrete values of the information signal.
 6. The method ofclaim 1, wherein generating the first value comprises equalizing thereceived signal in the frequency domain based at least in part on the atleast one indicator of the channel characteristics.
 7. The method ofclaim 1, wherein removing the error signal comprises filtering the firstestimate of the information signal.
 8. A device configured to receive asignal transmitted over a channel to simplify computational complexityin estimating channel behavior and correcting signals transmitted overthe channel, the signal comprising an information signal and at least aportion of a known signal, the device comprising: a first circuitconfigured to determine at least one indicator of channelcharacteristics based at least in part on the portion of the knownsignal; a second circuit configured to generate a first value indicativeof the information signal based at least in part on the at least oneindicator of the channel characteristics, wherein the first valuecomprises an error signal; and a third circuit configured to remove theerror signal from the first value of the signal based at least in parton the portion of the known signal; wherein the first circuit is furtherconfigured to determine an estimate of the channel characteristics inthe frequency domain as the at least one indicator of channelcharacteristics, and wherein the third circuit is a filter and furtherconfigured to determine a value indicative of the error signal byidentifying filter tap locations based on the estimate of the channelcharacteristics, the known signal, the portion of the known signal asreceived and by determining coefficients of the filter for each of thefilter tap locations based at least in part on a difference between theportion of the known signal as received and the known signal.
 9. Thedevice of claim 8, wherein the error signal is due at least in part tointersymbol interference.
 10. The device of claim 8, wherein the knownsignal is characterized by a non-zero signal in the frequency domain.11. The device of claim 8, wherein the first circuit is configured totransform the estimate of the channel characteristics from a signalcomprising a first number of discrete values to a signal comprising asecond number of discrete values, wherein the second number of discretevalues corresponds to a number of discrete values of the informationsignal.
 12. The device of claim 8, wherein the second circuit isconfigured to equalize the received signal in the frequency domain basedat least in part on the at least one indicator of the channelcharacteristics.
 13. The device of claim 8 wherein the third circuit isconfigured to filter the first estimate of the information signal. 14.The device of claim 8, wherein at least a portion of the first, second,and third circuit are formed on an integrated circuit.
 15. The device ofclaim 8, wherein further, at least a portion of the first, second, andthird circuit are implemented as a processor.
 16. A non-transitorycomputer-readable medium that simplifies computational complexity inestimating channel behavior and corrects signals transmitted over thechannel and having stored thereon computer-executable instructions for:a) receiving a signal transmitted over the channel, the signalcomprising an information signal and at least a portion of a knownsignal; b) determining at least one indicator of channel characteristicsbased at least in part on the portion of the known signal; c) generatinga first value indicative of the information signal based at least inpart on the at least one indicator of the channel characteristics,wherein the first value comprises an error signal; and d) removing theerror signal from the first value of the signal based at least in parton the portion of the known signal; wherein determining at least oneindicator of the channel characteristics comprises determining anestimate of the channel characteristics in the frequency domain, andwherein removing the error signal comprises determining a valueindicative of the error signal by identifying filter tap locations of afilter based on the estimate of the channel characteristics, the knownsignal, the portion of the known signal as received and by determiningcoefficients of the filter for each of the filter tap locations based atleast in part on a difference between the portion of the known signal asreceived and the known signal.
 17. The non-transitory computer-readablemedium of claim 16, wherein the error signal is due at least in part tointersymbol interference.
 18. The non-transitory computer-readablemedium of claim 16, wherein the known signal is characterized by anon-zero signal in the frequency domain.
 19. The non-transitorycomputer-readable medium of claim 16, wherein the known signal comprisesa pilot signal.
 20. The non-transitory computer-readable medium of claim16, wherein determining the at least one indicators of the channelcharacteristic further comprises transforming the estimate of thechannel characteristics from a signal comprising a first number ofdiscrete values to a signal comprising a second number of discretevalues, wherein the second number of discrete values corresponds to anumber of discrete values of the information signal.
 21. Thenon-transitory computer-readable medium of claim 16, wherein generatingthe first value comprises equalizing the received signal in thefrequency domain based at least in part on the at least one indicator ofthe channel characteristics.
 22. The non-transitory computer-readablemedium of claim 16, wherein removing the error signal comprisesfiltering the first estimate of the information signal.